package com.ziyun.erp.modules.order.vo;

import com.service.quote.module.quote.model.CutModel;
import com.ziyun.erp.common.e.order.AttributeValueType;
import com.ziyun.erp.common.e.order.PrintModeType;

import java.util.Map;

public class PaperInfoVO {

	/** 部件名 */
	private String partName;

	/** 印刷机名字 */
	private String printMachineName;

	/** 进纸尺寸 */
	private String cutSizes;

	/** 开度 */
	private int kaiValue;

	/** 拼版个数 */
	private int splitJointNum;

	/** 版数 */
	private int editionNum;

	/** 印数 */
	private int printNum;

	/** 印张 */
	private int printSheet;

	/** 印刷成本费用 */
	private double printPrice;

	/** 印刷销售费用*/
	private double printSalePrice;

	/** 纸张数 */
	private int paperNum;

	/** 用纸重量 */
	private double printPaperWeight;

	/** 纸价 */
	private double paperPrice;

	/** 纸价销售费用 */
	private double paperSalePrice;

	/** 工艺费 */
	private double craftPrice;

	/** 工艺销售费 */
	private double craftSalePrice;

	/** 报价成本总价 */
	private double costPrice;

	/** 销售价格 */
	private double totalPrice;

	/** 工艺价格 */
	private Map<AttributeValueType, Double> craftPriceMap;

	private boolean selfPaper = false;

	private PrintModeType printModeType;

	private String printModeTypeName;

	private CutModel cutModel;

//	public static void main(String[] args) {
//		JsonUtils.string2Collection("", ArrayList.class, PaperInfoVO.class);
//	}

	public static PaperInfoVO valueOf(String partName, String printMachineName, String cutSizes, int kaiValue,
									  int splitJointNum, int editionNum, int printNum, int printSheet, double printPrice, double paperPrice,
									  double craftPrice, double costPrice, double totalPrice, double printPaperWeight, int paperNum,
									  Map<AttributeValueType, Double> craftPriceMap, boolean selfPaper,PrintModeType printModeType) {
		PaperInfoVO paperResult = new PaperInfoVO();
		paperResult.partName = partName;
		paperResult.printMachineName = printMachineName;
		paperResult.cutSizes = cutSizes;
		paperResult.kaiValue = kaiValue;
		paperResult.splitJointNum = splitJointNum;
		paperResult.editionNum = editionNum;
		paperResult.printNum = printNum;
		paperResult.printSheet = printSheet;
		paperResult.printPrice = printPrice;
		paperResult.paperPrice = paperPrice;
		paperResult.craftPrice = craftPrice;
		paperResult.costPrice = costPrice;
		paperResult.totalPrice = totalPrice;
		paperResult.printPaperWeight = printPaperWeight;
		paperResult.paperNum = paperNum;
		paperResult.craftPriceMap = craftPriceMap;
		paperResult.selfPaper = selfPaper;
		paperResult.printModeType = printModeType;
		return paperResult;
	}

	public static PaperInfoVO fastPrintValueOf(String partName, String cutSizes, int splitJointNum, int printNum,
			int printSheet, double paperPrice, double craftPrice, double costPrice, double totalPrice,
			double printPaperWeight, String printMachineName) {
		PaperInfoVO paperResult = new PaperInfoVO();
		paperResult.partName = partName;
		paperResult.cutSizes = cutSizes;
		paperResult.splitJointNum = splitJointNum;
		paperResult.printNum = printNum;
		paperResult.printSheet = printSheet;
		paperResult.paperPrice = paperPrice; 
		paperResult.craftPrice = craftPrice;
		paperResult.totalPrice = totalPrice;
		paperResult.costPrice = costPrice;
		paperResult.printPaperWeight = printPaperWeight;
		paperResult.printMachineName = printMachineName;
		return paperResult;
	}

	public String getPartName() {
		return partName;
	}

	public void setPartName(String partName) {
		this.partName = partName;
	}

	public String getPrintMachineName() {
		return printMachineName;
	}

	public void setPrintMachineName(String printMachineName) {
		this.printMachineName = printMachineName;
	}

	public String getCutSizes() {
		return cutSizes;
	}

	public void setCutSizes(String cutSizes) {
		this.cutSizes = cutSizes;
	}

	public int getKaiValue() {
		return kaiValue;
	}

	public void setKaiValue(int kaiValue) {
		this.kaiValue = kaiValue;
	}

	public int getSplitJointNum() {
		return splitJointNum;
	}

	public void setSplitJointNum(int splitJointNum) {
		this.splitJointNum = splitJointNum;
	}

	public int getEditionNum() {
		return editionNum;
	}

	public void setEditionNum(int editionNum) {
		this.editionNum = editionNum;
	}

	public int getPrintNum() {
		return printNum;
	}

	public void setPrintNum(int printNum) {
		this.printNum = printNum;
	}

	public int getPrintSheet() {
		return printSheet;
	}

	public void setPrintSheet(int printSheet) {
		this.printSheet = printSheet;
	}

	public double getPrintPrice() {
		return printPrice;
	}

	public void setPrintPrice(double printPrice) {
		this.printPrice = printPrice;
	}

	public int getPaperNum() {
		return paperNum;
	}

	public void setPaperNum(int paperNum) {
		this.paperNum = paperNum;
	}

	public double getPrintPaperWeight() {
		return printPaperWeight;
	}

	public void setPrintPaperWeight(double printPaperWeight) {
		this.printPaperWeight = printPaperWeight;
	}

	public double getPaperPrice() {
		return paperPrice;
	}

	public void setPaperPrice(double paperPrice) {
		this.paperPrice = paperPrice;
	}

	public double getCraftPrice() {
		return craftPrice;
	}

	public void setCraftPrice(double craftPrice) {
		this.craftPrice = craftPrice;
	}

	public double getCostPrice() {
		return costPrice;
	}

	public void setCostPrice(double costPrice) {
		this.costPrice = costPrice;
	}

	public double getTotalPrice() {
		return totalPrice;
	}

	public void setTotalPrice(double totalPrice) {
		this.totalPrice = totalPrice;
	}

	public Map<AttributeValueType, Double> getCraftPriceMap() {
		return craftPriceMap;
	}

	public void setCraftPriceMap(Map<AttributeValueType, Double> craftPriceMap) {
		this.craftPriceMap = craftPriceMap;
	}

	public double getPrintSalePrice() {
		return printSalePrice;
	}

	public void setPrintSalePrice(double printSalePrice) {
		this.printSalePrice = printSalePrice;
	}

	public double getPaperSalePrice() {
		return paperSalePrice;
	}

	public void setPaperSalePrice(double paperSalePrice) {
		this.paperSalePrice = paperSalePrice;
	}

	public double getCraftSalePrice() {
		return craftSalePrice;
	}

	public void setCraftSalePrice(double craftSalePrice) {
		this.craftSalePrice = craftSalePrice;
	}

	public boolean isSelfPaper() {
		return selfPaper;
	}

	public void setSelfPaper(boolean selfPaper) {
		this.selfPaper = selfPaper;
	}

	public PrintModeType getPrintModeType() {
		return printModeType;
	}

	public void setPrintModeType(PrintModeType printModeType) {
		this.printModeType = printModeType;
	}

	public String getPrintModeTypeName() {
		return printModeTypeName;
	}

	public void setPrintModeTypeName(String printModeTypeName) {
		this.printModeTypeName = printModeTypeName;
	}

	public CutModel getCutModel() {
		return cutModel;
	}

	public void setCutModel(CutModel cutModel) {
		this.cutModel = cutModel;
	}
}
